#ifndef KEYTABLE_HPP
#define KEYTABLE_HPP
#include "pch.hpp"
#include <gtk/gtk.h>
#include <vte/vte.h>

static std::map<int, char const *> const modify_table = {
    {GDK_KEY_Tab, "\033[27;5;9~"},
    {GDK_KEY_Return, "\033[27;5;13~"},
    {GDK_KEY_apostrophe, "\033[27;5;39~"},
    {GDK_KEY_comma, "\033[27;5;44~"},
    {GDK_KEY_minus, "\033[27;5;45~"},
    {GDK_KEY_period, "\033[27;5;46~"},
    {GDK_KEY_0, "\033[27;5;48~"},
    {GDK_KEY_1, "\033[27;5;49~"},
    {GDK_KEY_9, "\033[27;5;57~"},
    {GDK_KEY_semicolon, "\033[27;5;59~"},
    {GDK_KEY_equal, "\033[27;5;61~"},
    {GDK_KEY_exclam, "\033[27;6;33~"},
    {GDK_KEY_quotedbl, "\033[27;6;34~"},
    {GDK_KEY_numbersign, "\033[27;6;35~"},
    {GDK_KEY_dollar, "\033[27;6;36~"},
    {GDK_KEY_percent, "\033[27;6;37~"},
    {GDK_KEY_ampersand, "\033[27;6;38~"},
    {GDK_KEY_parenleft, "\033[27;6;40~"},
    {GDK_KEY_parenright, "\033[27;6;41~"},
    {GDK_KEY_asterisk, "\033[27;6;42~"},
    {GDK_KEY_plus, "\033[27;6;43~"},
    {GDK_KEY_colon, "\033[27;6;58~"},
    {GDK_KEY_less, "\033[27;6;60~"},
    {GDK_KEY_greater, "\033[27;6;62~"},
    {GDK_KEY_question, "\033[27;6;63~"},
};

static std::map<int, char const *> const modify_meta_table = {
    {GDK_KEY_Tab, "\033[27;13;9~"},
    {GDK_KEY_Return, "\033[27;13;13~"},
    {GDK_KEY_apostrophe, "\033[27;13;39~"},
    {GDK_KEY_comma, "\033[27;13;44~"},
    {GDK_KEY_minus, "\033[27;13;45~"},
    {GDK_KEY_period, "\033[27;13;46~"},
    {GDK_KEY_0, "\033[27;13;48~"},
    {GDK_KEY_1, "\033[27;13;49~"},
    {GDK_KEY_9, "\033[27;13;57~"},
    {GDK_KEY_semicolon, "\033[27;13;59~"},
    {GDK_KEY_equal, "\033[27;13;61~"},
    {GDK_KEY_exclam, "\033[27;14;33~"},
    {GDK_KEY_quotedbl, "\033[27;14;34~"},
    {GDK_KEY_numbersign, "\033[27;14;35~"},
    {GDK_KEY_dollar, "\033[27;14;36~"},
    {GDK_KEY_percent, "\033[27;14;37~"},
    {GDK_KEY_ampersand, "\033[27;14;38~"},
    {GDK_KEY_parenleft, "\033[27;14;40~"},
    {GDK_KEY_parenright, "\033[27;14;41~"},
    {GDK_KEY_asterisk, "\033[27;14;42~"},
    {GDK_KEY_plus, "\033[27;14;43~"},
    {GDK_KEY_colon, "\033[27;14;58~"},
    {GDK_KEY_less, "\033[27;14;60~"},
    {GDK_KEY_greater, "\033[27;14;62~"},
    {GDK_KEY_question, "\033[27;14;63~"},
};

#endif // header file protect
